package com.sgcc.pda.frme.protocol.ws.sendbean;



/**
 * sim卡检测参数
 *
 * @Author: guorongxin
 * @Date: 2016/10/1
 * @Time: 12:01
 */

public class SimParams {
    public int Totle_bytes = 4 + 1 + 4 + 2 + 1 + 16 + 16 + 16 + 1;
    //终端逻辑地址（4字节）
    public static final int ZDLJDZ = 4 * 2;
    //协议类型（1字节）
    public static final int XYLX = 1 * 2;
    //主站ip地址(4字节)
    public static final int WEB_IP = 4 * 2;
    //主站端口号（2字节）
    public static final int WEB_PORT = 2 * 2;
    //运行商类型（1字节）
    public static final int YYSLX = 1 * 2;
    //网络制式（1字节）
    public static final int WLZS = 1 * 2;
    //APN名称（16字节）
    public static final int APNNAME = 16 * 2;
    //专网用户名（16字节）
    public static final int ZWYHM = 16 * 2;
    //专网用户密码（16字节）
    public static final int ZWYHMM = 16 * 2;
    //传输方式（1字节）
    public static final int CSFS = 1 * 2;

    /**
     * 终端通讯地址（4字节）
     */
    private String tmnl_address;
    /**
     * 协议类型（1字节）
     * 0：09规约
     * 1：13规约
     */
    private String protocol_type;
    /**
     * 主站ip地址（4字节）
     */
    private String web_ip;
    /**
     * 主站端口号（2字节）
     */
    private String web_port;
    /**
     * 运营商类型（1字节）
     * 00：自动
     * 01：移动
     * 02：联通
     * 03：电信
     */
    private String operators_type;

    /**
     * 网络制式
     * 00：自动
     * 01：2G网络
     * 02：3G网络
     * 03：4G网络
     */
    private String wlzs_type;
    /**
     * apn名称（16字节）
     * 低字节在前，高字节在后不足补零
     */
    private String apn_name;
    /**
     * 专网用户名（16字节）
     * 低字节在前高字节在后，16个字节，不足补0
     */
    private String network_name;
    /**
     * 专网用户密码（16字节）
     * 低字节在前高字节在后，16个字节，不足补0
     */
    private String network_pwd;
    /**
     * 传输方式（1字节）
     * 01:TCP
     * 02:UDP
     */
    private String transmission_mode;

    public String getTmnl_address() {
        return tmnl_address;
    }

    public void setTmnl_address(String tmnl_address) {
        this.tmnl_address = tmnl_address;
    }

    public String getProtocol_type() {
        return protocol_type;
    }

    public void setProtocol_type(String protocol_type) {
        this.protocol_type = protocol_type;
    }

    public String getWeb_ip() {
        return web_ip;
    }

    public void setWeb_ip(String web_ip) {
        this.web_ip = web_ip;
    }

    public String getWeb_port() {
        return web_port;
    }

    public void setWeb_port(String web_port) {
        this.web_port = web_port;
    }

    public String getOperators_type() {
        return operators_type;
    }

    public void setOperators_type(String operators_type) {
        this.operators_type = operators_type;
    }

    public String getWlzs_type() {
        return wlzs_type;
    }

    public void setWlzs_type(String wlzs_type) {
        this.wlzs_type = wlzs_type;
    }

    public String getApn_name() {
        return apn_name;
    }

    public void setApn_name(String apn_name) {
        this.apn_name = apn_name;
    }

    public String getNetwork_name() {
        return network_name;
    }

    public void setNetwork_name(String network_name) {
        this.network_name = network_name;
    }

    public String getNetwork_pwd() {
        return network_pwd;
    }

    public void setNetwork_pwd(String network_pwd) {
        this.network_pwd = network_pwd;
    }

    public String getTransmission_mode() {
        return transmission_mode;
    }

    public void setTransmission_mode(String transmission_mode) {
        this.transmission_mode = transmission_mode;
    }

    /**
     * 下发的sim检查参转化为字符串
     *
     * @return
     */
    public String toString() {
        StringBuffer result = new StringBuffer();
        if(tmnl_address == null){
            return "";
        }
        if (tmnl_address.length() != 8) {
            return null;
        }
        result.append(tmnl_address);
        if (protocol_type.length() != 2) {
            return null;
        }
        result.append(protocol_type);
        if (web_ip.length() != 8) {
            return null;
        }
        result.append(web_ip);
        if (web_port.length() != 4) {
            return null;
        }
        result.append(web_port);
        if (operators_type.length() != 2) {
            return null;
        }
        result.append(operators_type);
        if (wlzs_type.length() != 2) {
            return null;
        }
        result.append(wlzs_type);
        if (apn_name.length() != 32) {
            return null;
        }
        result.append(apn_name);
        if (network_name.length() != 32) {
            return null;
        }
        result.append(network_name);

        if (network_pwd.length() != 32) {
            return null;
        }
        result.append(network_pwd);
        if (transmission_mode.length() != 2) {
            return null;
        }
        result.append(transmission_mode);
        return result.toString();
    }
}
